Cartesian genetic programming